(1) Field of the Invention
The present invention relates to a data transfer process with a loop (echo) checking, which is particularly useful in a transfer operation of a large amount of data between two data processing systems.
(2) Description of the Related Art
In a data transfer process including loop checking, data which has been sent out from a first system and received in a second system is sent back from the second system to the first system. The first system receives the returned data, and compares the returned data with the data which was first sent out from the first system. Thus, if the data and the returned data are not equal, it means that the data sent out from the first system may have not been correctly received by the second system.
Usually, an amount of data which is to be transferred from one system to the other system, exceeds an amount which can be transferred in one transfer operation, i.e., a plurality of transfer operations must be successively carried out between the two systems, and accordingly, a plurality of transfer back operations must be carried out in a data transfer process with loop checking.
In the conventional data transfer process with loop checking, first, the above-mentioned successive data transfer operations from one system to the other system are carried out. Secondly, successive transfer back operations of the data are carried out, and thirdly, the above comparison is carried out for all the data.
However, the timing of an output of data from one system must be informed to the other system, and the timing of a data reception in one system must be informed to the other system, in each data transfer operation during the above successive data transfer operations and the above successive transfer back operations.
Therefore, when the number of the above plurality transfer operations is N, a time necessary for informing the timing of an output of data in one system to the other system in each data transfer operation is T1, and a time necessary for informing the timing of a data reception in one system to the other system in each data transfer operation is T2, it takes N.multidot.(T1+T2) for the above operations for informing the timings of data outputs and data receptions during the above successive data transfer operations. Accordingly, it takes 2N.multidot.(T1+T2) for the above operations for informing the timings of data outputs and data receptions during the above successive data transfer operations and the above successive transfer back operations.
Namely, in the conventional data transfer process with loop checking, the data transfer time is long. In particular, when the amount of data transferred is large, i.e., the above number N is large, the conventional data transfer process with loop checking causes a great delay in data processing.
In addition, a sequence for determining which system is a sender and which system is a receiver is necessary before the above successive data transfer operations and before the above successive transfer back operations.
Further, in the conventional data transfer process with loop checking, if the data returned from the second system to the first system is not equal to the data first sent from the first system to the second system, i.e., when it is determined that the data sent out from the first system may have not been correctly received in the second system, the data first sent to the second system is re-sent to the second system.
When the above incorrect reception is due to transient cause, e.g., a transient noise, the re-sent data is expected to be correctly received in the second system. However, when the above incorrect reception is due to a lasting cause, e.g., a break of a part or all of the data transmission lines, the re-sent data will not be correctly received in the second system, and the correct data cannot be recognized in the second system, if the re-sent data is the same as the data firstly sent.